package com.kakarote.hrm.mapper;

import com.kakarote.core.entity.BasePage;
import com.kakarote.core.servlet.BaseMapper;
import com.kakarote.hrm.entity.BO.QueryEmployeeDataBo;
import com.kakarote.hrm.entity.PO.HrmEmployeeDataIntegrity;
import com.kakarote.hrm.entity.VO.DeptEmployeeDataTotalVO;
import com.kakarote.hrm.entity.VO.EmployeeDataIntegrityVo;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;
import java.util.List;

/**
 * <p>
 * 员工数据完整度 Mapper 接口
 * </p>
 *
 * @author guomenghao
 * @since 2021-04-14
 */
public interface HrmEmployeeDataIntegrityMapper extends BaseMapper<HrmEmployeeDataIntegrity> {

    List<DeptEmployeeDataTotalVO> queryDeptDataIntegrityTotal(@Param("integrityDate") LocalDate integrityDate);

    void batchInsert(@Param("totalList") List<HrmEmployeeDataIntegrity> totalList);

    BasePage<EmployeeDataIntegrityVo> queryEmployeeDataIntegrity(BasePage<Object> parse, @Param("data") QueryEmployeeDataBo queryEmployeeDataBo);

    List<String> queryDataIntegrityAllDate();

    void deleteDataIntegrityByDate(@Param("dataDate") String dataDate);
}
